1. Field of the Invention
The present invention relates to code-division multiple-access (CDMA) communications systems. More specifically, two-dimensional orthogonal variable spreading factor (2D-OVSF) codes for a multicarrier direct-sequence CDMA system are disclosed.
2. Description of the Prior Art
The enormous market penetration of second-generation (2G) mobile communications systems, and the promise of expanded features for these devices, has spurred the demand for transmission/reception strategies that are capable of ever-greater data transmission rates. This has lead to the development of so-called third-generation (3G) mobile communications, such as the 2 Mbps wideband code-division multiple-access (W-CDMA) service proposed by the International Mobile Telecommunications 2000 (IMT-2000) body. CDMA technology is used in 3G mobile communications to provide wideband services in a flexible manner. Through spectrum spreading, CDMA systems offer spectrum reuse, multipath resistance, frequency diversity and interference rejection.
To support both high-speed and multirate data services, two approaches are used in an IMT-2000 W-CDMA system: variable-length spreading and multicode techniques. Variable-length spreading CDMA uses multiple spreading factors for multirate transmissions, whereas multicode CDMA allocates multiple codes to high data rate services. The two-layered spreading method is used in W-CDMA to provide mutual orthogonality between users of the same cell, while maintaining mutual randomness between users of different cells. The two-layered spreading method has two parts. The first is channelization, which transforms every data symbol into a predetermined number of chips. The number of chips per data symbol is termed the spreading factor. Orthogonal variable spreading factor (OVSF) codes are employed as channelization codes to ensure orthogonality between different downlink channels. The second part is scrambling. Each user in the same cell uses the same scrambling code to provide randomness (or, rather, pseudo-randomness) between users of different cells. However, orthogonal variable spreading factor (OVSF) codes cannot maintain orthogonality among users in the uplink channels. Therefore, users in the same cell use different scrambling codes to provide randomness and orthogonality in uplink channels.
However, for even greater data transmission capabilities, multicarrier direct-sequence CDMA (MC-DS/CDMA) systems have been proposed. MC-DS/CDMA communications systems using orthogonal spreading codes have an advantage in that they minimize multiple-access interference (MAI), which is one of the primary sources of Interference in CDMA systems. By reducing MAI, greater transmission data rates are made possible. Each user in a MC-DS/CDMA system is assigned a distinct two-dimensional (2D) spreading code sequence in the form of a matrix, which serves as the signature sequence for the user. The number of columns in the matrix indicates the spreading factor utilized (i.e., the number of chips per data symbol). The number of rows in the matrix indicates the number of frequency carriers in the MC-DS/CDMA system. Each row of the matrix is transmitted along different frequency carriers. It is possible to construct a class of 2D spreading code matrices for MC-DS/CDMA systems that exhibit cyclic autocorrelation sidelobes and cyclic cross-correlation functions that are at most zero at all times. As MAI is primarily the result of non-zero cross-correlation functions of simultaneously transmitting users, by providing such unique spreading code matrices, MAI can be significantly reduced In MC-DS/CDMA communications systems. Please refer to FIG. 1A and FIG. 1B. FIG. 1A is a simple block diagram of a MC-DS/CDMA communications system 10 according to the prior art. FIG. 1B Illustrates an M×N spreading code matrix 14a utilized by the communications system 10. Input data 12a feeds into a multiplier 14, which spreads the spectrum through the assignment of unique signature M×N spreading code matrix 14a. Data after spreading spectrum 15 is then fed into a multicarrier modulation unit 16 and transmitted. On a receiver side, a multicarrier demodulation unit 17 receivers the transmitted signal and demodulates it to generate the demodulated data 18. A multiplier 19 multiplies the data 18 by the same M×N spreading code matrix 14a to generate output data 12b. Typically, the M×N spreading code matrices of all users are identical,and ideally the output data 12b should match the input data 12a. 
To date, however, MC-DS/CDMA spreading code matrices have been very limited in form, being M×N with the following restrictions:M=N=2k, with k≧1, or  1)M=2k, and N=M2, with k≧1.  2)
This places a corresponding restriction on MC-DS/CDMA communications systems that severely limits the potential flexibility of these systems as regards data transmission parameters.